package sv.gob.mh.dgii.model;

// Generated Dec 12, 2007 1:25:05 PM by Hibernate Tools 3.2.0.CR1

import java.io.Serializable;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * DvCredFisExp generated by hbm2java
 */
@Entity
@Table(name = "DV_CRED_FIS_EXP", schema = "DEVOLUCIONES")
public class DvCredFisExp implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -7244585075835115904L;
	private Long iindice;
	private EdDeclaraciones edDeclaraciones;
	private String nfolio;
	private RcRuc rcRuc;
	private String cactEco;
	private String ntelefono;
	private String semail;
	private String cactEco2;
	private String stipoProdExp;
	private String mgrande;
	private String mmediano;
	private String motros;
	private Date fisolicitado;
	private Date ffsolicitado;
	private Double vcredSolicitado;
	private String svalorLetras;
	private Date fpultReint;
	private Double vmontoUltReint;
	private String nitrepresentante;
	private String snombreRepresentante;
	private String mrepresentante;
	private String mapoderado;
	private String mnatural;
	private Double vivaProdNac;
	private Double vivaProdImp;
	private Double vtotCredAcumul;
	private Date fpresentacion;
	private Double vexportTotal;
	private String mformaReintegro;
	private Set<DvCredFisExpDet> dvCredFisExpDets = new HashSet<DvCredFisExpDet>(0);

	public DvCredFisExp() {
	}

	public DvCredFisExp(Long iindice) {
		this.iindice = iindice;
	}

	/**
	 * @return the iindice
	 */
	@Id
	@Column(name = "I_INDICE", nullable = false, precision = 18, scale = 0)
	public Long getIindice() {
		return iindice;
	}

	/**
	 * @param iindice
	 *            the iindice to set
	 */
	public void setIindice(Long iindice) {
		this.iindice = iindice;
	}

	/**
	 * @return the edDeclaraciones
	 */
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "I_INDICE", unique = true, nullable = false, insertable = false, updatable = false)
	public EdDeclaraciones getEdDeclaraciones() {
		return edDeclaraciones;
	}

	/**
	 * @param edDeclaraciones
	 *            the edDeclaraciones to set
	 */
	public void setEdDeclaraciones(EdDeclaraciones edDeclaraciones) {
		this.edDeclaraciones = edDeclaraciones;
	}

	/**
	 * @return the nfolio
	 */
	@Column(name = "N_FOLIO", nullable = false, length = 12)
	public String getNfolio() {
		return nfolio;
	}

	/**
	 * @param nfolio
	 *            the nfolio to set
	 */
	public void setNfolio(String nfolio) {
		this.nfolio = nfolio;
	}

	/**
	 * @return the rcRuc
	 */
	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = "NIT")
	public RcRuc getRcRuc() {
		return rcRuc;
	}

	/**
	 * @param rcRuc
	 *            the rcRuc to set
	 */
	public void setRcRuc(RcRuc rcRuc) {
		this.rcRuc = rcRuc;
	}

	/**
	 * @return the cactEco
	 */
	@Column(name = "C_ACT_ECO", nullable = true, length = 60)
	public String getCactEco() {
		return cactEco;
	}

	/**
	 * @param cactEco
	 *            the cactEco to set
	 */
	public void setCactEco(String cactEco) {
		this.cactEco = cactEco;
	}

	/**
	 * @return the ntelefono
	 */
	@Column(name = "N_TELEFONO", nullable = true, length = 8)
	public String getNtelefono() {
		return ntelefono;
	}

	/**
	 * @param ntelefono
	 *            the ntelefono to set
	 */
	public void setNtelefono(String ntelefono) {
		this.ntelefono = ntelefono;
	}

	/**
	 * @return the semail
	 */
	@Column(name = "S_EMAIL", nullable = true, length = 60)
	public String getSemail() {
		return semail;
	}

	/**
	 * @param semail
	 *            the semail to set
	 */
	public void setSemail(String semail) {
		this.semail = semail;
	}

	/**
	 * @return the cactEco2
	 */
	@Column(name = "C_ACT_ECO_2", nullable = true, length = 60)
	public String getCactEco2() {
		return cactEco2;
	}

	/**
	 * @param cactEco2
	 *            the cactEco2 to set
	 */
	public void setCactEco2(String cactEco2) {
		this.cactEco2 = cactEco2;
	}

	/**
	 * @return the stipoProdExp
	 */
	@Column(name = "S_TIPO_PROD_EXP", nullable = true, length = 100)
	public String getStipoProdExp() {
		return stipoProdExp;
	}

	/**
	 * @param stipoProdExp
	 *            the stipoProdExp to set
	 */
	public void setStipoProdExp(String stipoProdExp) {
		this.stipoProdExp = stipoProdExp;
	}

	/**
	 * @return the mgrande
	 */
	@Column(name = "M_GRANDE", nullable = true, length = 1)
	public String getMgrande() {
		return mgrande;
	}

	/**
	 * @param mgrande
	 *            the mgrande to set
	 */
	public void setMgrande(String mgrande) {
		this.mgrande = mgrande;
	}

	/**
	 * @return the mmediano
	 */
	@Column(name = "M_MEDIANO", nullable = true, length = 1)
	public String getMmediano() {
		return mmediano;
	}

	/**
	 * @param mmediano
	 *            the mmediano to set
	 */
	public void setMmediano(String mmediano) {
		this.mmediano = mmediano;
	}

	/**
	 * @return the motros
	 */
	@Column(name = "M_OTROS", nullable = true, length = 1)
	public String getMotros() {
		return motros;
	}

	/**
	 * @param motros
	 *            the motros to set
	 */
	public void setMotros(String motros) {
		this.motros = motros;
	}

	/**
	 * @return the fisolicitado
	 */
	@Temporal(TemporalType.TIMESTAMP)
	@Column(insertable = true, name = "FI_SOLICITADO", length = 7, nullable = false, updatable = true)
	public Date getFisolicitado() {
		return fisolicitado;
	}

	/**
	 * @param fisolicitado
	 *            the fisolicitado to set
	 */
	public void setFisolicitado(Date fisolicitado) {
		this.fisolicitado = fisolicitado;
	}

	/**
	 * @return the ffsolicitado
	 */
	@Temporal(TemporalType.TIMESTAMP)
	@Column(insertable = true, name = "FF_SOLICITADO", length = 7, updatable = true)
	public Date getFfsolicitado() {
		return ffsolicitado;
	}

	/**
	 * @param ffsolicitado
	 *            the ffsolicitado to set
	 */
	public void setFfsolicitado(Date ffsolicitado) {
		this.ffsolicitado = ffsolicitado;
	}

	/**
	 * @return the vcredSolicitado
	 */
	@Column(name = "V_CRED_SOLICITADO", nullable = false, precision = 11, scale = 2)
	public Double getVcredSolicitado() {
		return vcredSolicitado;
	}

	/**
	 * @param vcredSolicitado
	 *            the vcredSolicitado to set
	 */
	public void setVcredSolicitado(Double vcredSolicitado) {
		this.vcredSolicitado = vcredSolicitado;
	}

	/**
	 * @return the svalorLetras
	 */
	@Column(name = "S_VALOR_LETRAS", nullable = true, length = 1024)
	public String getSvalorLetras() {
		return svalorLetras;
	}

	/**
	 * @param svalorLetras
	 *            the svalorLetras to set
	 */
	public void setSvalorLetras(String svalorLetras) {
		this.svalorLetras = svalorLetras;
	}

	/**
	 * @return the fpultReint
	 */
	@Temporal(TemporalType.TIMESTAMP)
	@Column(insertable = true, name = "FP_ULT_REINT", length = 7, updatable = true)
	public Date getFpultReint() {
		return fpultReint;
	}

	/**
	 * @param fpultReint
	 *            the fpultReint to set
	 */
	public void setFpultReint(Date fpultReint) {
		this.fpultReint = fpultReint;
	}

	/**
	 * @return the vmontoUltReint
	 */
	@Column(name = "V_MONTO_ULT_REINT", nullable = true, precision = 11, scale = 2)
	public Double getVmontoUltReint() {
		return vmontoUltReint;
	}

	/**
	 * @param vmontoUltReint
	 *            the vmontoUltReint to set
	 */
	public void setVmontoUltReint(Double vmontoUltReint) {
		this.vmontoUltReint = vmontoUltReint;
	}

	/**
	 * @return the nitrepresentante
	 */
	@Column(name = "NIT_REPRESENTANTE", nullable = false, length = 14)
	public String getNitrepresentante() {
		return nitrepresentante;
	}

	/**
	 * @param nitrepresentante
	 *            the nitrepresentante to set
	 */
	public void setNitrepresentante(String nitrepresentante) {
		this.nitrepresentante = nitrepresentante;
	}

	/**
	 * @return the snombreRepresentante
	 */
	@Column(name = "S_NOMBRE_REPRESENTANTE", nullable = true, length = 100)
	public String getSnombreRepresentante() {
		return snombreRepresentante;
	}

	/**
	 * @param snombreRepresentante
	 *            the snombreRepresentante to set
	 */
	public void setSnombreRepresentante(String snombreRepresentante) {
		this.snombreRepresentante = snombreRepresentante;
	}

	/**
	 * @return the mrepresentante
	 */
	@Column(name = "M_REPRESENTANTE", nullable = true, length = 1)
	public String getMrepresentante() {
		return mrepresentante;
	}

	/**
	 * @param mrepresentante
	 *            the mrepresentante to set
	 */
	public void setMrepresentante(String mrepresentante) {
		this.mrepresentante = mrepresentante;
	}

	/**
	 * @return the mapoderado
	 */
	@Column(name = "M_APODERADO", nullable = true, length = 1)
	public String getMapoderado() {
		return mapoderado;
	}

	/**
	 * @param mapoderado
	 *            the mapoderado to set
	 */
	public void setMapoderado(String mapoderado) {
		this.mapoderado = mapoderado;
	}

	/**
	 * @return the mnatural
	 */
	@Column(name = "M_NATURAL", nullable = true, length = 1)
	public String getMnatural() {
		return mnatural;
	}

	/**
	 * @param mnatural
	 *            the mnatural to set
	 */
	public void setMnatural(String mnatural) {
		this.mnatural = mnatural;
	}

	/**
	 * @return the vivaProdNac
	 */
	@Column(name = "V_IVA_PROD_NAC", nullable = true, precision = 15, scale = 2)
	public Double getVivaProdNac() {
		return vivaProdNac;
	}

	/**
	 * @param vivaProdNac
	 *            the vivaProdNac to set
	 */
	public void setVivaProdNac(Double vivaProdNac) {
		this.vivaProdNac = vivaProdNac;
	}

	/**
	 * @return the vivaProdImp
	 */
	@Column(name = "V_IVA_PROD_IMP", nullable = true, precision = 15, scale = 2)
	public Double getVivaProdImp() {
		return vivaProdImp;
	}

	/**
	 * @param vivaProdImp
	 *            the vivaProdImp to set
	 */
	public void setVivaProdImp(Double vivaProdImp) {
		this.vivaProdImp = vivaProdImp;
	}

	/**
	 * @return the vtotCredAcumul
	 */
	@Column(name = "V_TOT_CRED_ACUMUL", nullable = false, precision = 11, scale = 2)
	public Double getVtotCredAcumul() {
		return vtotCredAcumul;
	}

	/**
	 * @param vtotCredAcumul
	 *            the vtotCredAcumul to set
	 */
	public void setVtotCredAcumul(Double vtotCredAcumul) {
		this.vtotCredAcumul = vtotCredAcumul;
	}

	/**
	 * @return the fpresentacion
	 */
	@Temporal(TemporalType.TIMESTAMP)
	@Column(insertable = true, name = "F_PRESENTACION", length = 7, nullable = false, updatable = true)
	public Date getFpresentacion() {
		return fpresentacion;
	}

	/**
	 * @param fpresentacion
	 *            the fpresentacion to set
	 */
	public void setFpresentacion(Date fpresentacion) {
		this.fpresentacion = fpresentacion;
	}

	/**
	 * @return the vexportTotal
	 */
	@Column(name = "V_EXPORT_TOTAL", nullable = true, precision = 11, scale = 2)
	public Double getVexportTotal() {
		return vexportTotal;
	}

	/**
	 * @param vexportTotal
	 *            the vexportTotal to set
	 */
	public void setVexportTotal(Double vexportTotal) {
		this.vexportTotal = vexportTotal;
	}

	/**
	 * @return the mformaReintegro
	 */
	@Column(name = "M_FORMA_REINTEGRO", nullable = true, length = 1)
	public String getMformaReintegro() {
		return mformaReintegro;
	}

	/**
	 * @param mformaReintegro
	 *            the mformaReintegro to set
	 */
	public void setMformaReintegro(String mformaReintegro) {
		this.mformaReintegro = mformaReintegro;
	}

	/**
	 * @return the dvCredFisExpDets
	 */
	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "dvCredFisExp")
	public Set<DvCredFisExpDet> getDvCredFisExpDets() {
		return dvCredFisExpDets;
	}

	/**
	 * @param dvCredFisExpDets
	 *            the dvCredFisExpDets to set
	 */
	public void setDvCredFisExpDets(Set<DvCredFisExpDet> dvCredFisExpDets) {
		this.dvCredFisExpDets = dvCredFisExpDets;
	}

}
